Tekenreeksen interpolatie
Home

Tekenreeksen interpolatie

Tekenreeksen interpolatie

C # 6 introduceerde een nieuwe manier om strings te formatteren, namelijk string interpolatie. Het is een verkorte syntax waarmee ke numerieke placeholders door expressies kan vervangen.

Een geïnterpoleerd tekenreeksexpressie ziet eruit als een template string die expressies bevat. Een geïnterpoleerd tekenreeksexpressie creëert een string door de expressies erin te vervangen door ToString representaties van de resultaten van de expressies. Een geïnterpoleerde string is gemakkelijker te lezen en te begrijpen dan de Tekenreeksen formatteren (composite formatting).

Voorbeelden

composite formating

string item = "brood";
decimal amount = 2.25m;
Console.WriteLine("{0,-10}{1:C}", item, amount); 

interpolatie

Console.WriteLine($"{item}kost {amount}");

De $ prefix is vereist. De waarde in de item variabele gaat {item} vervangen en de waarde in de amount variabele vervangt {amount}. Net zoals bij numerieke placeholders, kan je bijkomende formattering toevoegen.

Console.WriteLine($"{nameof(item)}: {item,-10} {nameof(amount)}: {amount:C}"); 

De nameof operator retourneert de naam “item”. Zo zie je dat je expressies kan gebruiken in placeholders. Hier passen we witruimte en valuta formattering toe op item en amount.

string name = "Bob Dylan";
int age = 80;
var s = $"{name, 20} is {age:D3} year{(age == 1 ? "" : "s")} old.";
Console.WriteLine(s);

Oefening

  1. Plaats de code hierboven in een static methode met de naam Interpolatie in de klasse met de naam WerkenMetGegevens in de namespace met de naam LerenWerkenMetCSharp.
  2. Test deze methode in de Main methode in Program.cs.
JI
2018-10-01 17:21:41